package main

import (
	"github.com/astaxie/beego/logs"
	"encoding/json"
	"fmt"
	"os"
)

func main() {
    logs.Register("new", logs.NewConsole)
    config := make(map[string]interface{})  // 先定义一个map来存放配置参数
    config["level"] = 4  // LevelWarning = 4
	config["color"] = true  // map的value可能是字符串、整形或bool等不同的类型，所以定义的时候类型是空接口
	configStr, err := json.Marshal(config)
	if err != nil {
		fmt.Fprintf(os.Stderr, "json Marshal ERROR %v\n", err)
		return
	}
    logs.SetLogger("new", string(configStr))  // 用map来设置参数，到这里再转成json字符串
    logs.SetLogger(logs.AdapterConsole)  // 再设置一个默认的console引擎
    logs.Info("INFO msg")  // 满足1个logger
    logs.Error("ERROR msg")  // 两个logger都会输出这条
}